dPrint Documentation (C) Copyright Daniel Doman 1986, 1987 166 East 96th Street New York, N.Y. 10128 dPrint is copyrighted by, and is the sole property of Daniel B. Doman. You are hereby granted a single user license to use dPrint. You may not modify dPrint, resell, or otherwise charge for its use without violating this license. What dPrint Is dPrint is a file printing utility that formats and paginates text. It has a variety of options that allows the user to customize its output. dPrint is not intended to print formatted text. dPrint was written primarily to print program source code. The predecessor to dPrint was called Cprint. The change was made to match the naming conventions of other programs by the author such as dBBS, DFF etc.. Other utility programs are Cmove, 3Ct, BB-Sort, QuickLink, and Picklist. usage - dPrint {options} file1 \\progs\\file2 {new options} ?ile3* ..... Command Line Arguments -Lxx Change the lines per page from the default of 58 lines per page. dPrint will issue a page break, and print a new header every xx lines. Example: -L112 <- Change Lines Per Page to 112 -Wxxx Change the Width or Right margin from the default of 76 columns. dPrint will wrap lines around to the next line if text is wider than this value. You might want to change this value if you are printing in compressed print to a larger value. If you want to completely disable line wrapping, you can specify a right very large margin value such as 9999. Example: -W100 <- Change Right Margin To 100 -Mxx Set left margin. The default left margin is 0, but you can change this to any value that you want. Example: -M12 <- Change Left Margin To 12 -Odevname Change the output device. The default output device is "PRN", but you can change this to another printer such as LPT2 or the name of a file. If you are printing multiple files, all output will go to the device or file that you specify until or unless you change the name of the output file again. The devicename can be any legal DOS filename or physical device. Example: -oDUMP.TXT <- Change Output From PRN To DUMP.TXT -P Show File Paths. The dPrint prints the name of each file on each header line. The default is to strip any drive and path from the filename. If you toggle this switch the full pathname will be printed. -I Toggle indentation OFF/ON. Most program source code is indented according to program logic. If dPrint has to wrap a line around, it will maintain the indentation plus one space. If indentation is turned off text wrapped around to the next line will begin at the left margin. -T# Change Default Tab alignment. The default value used for Tab Alignment is 8, the same as for PC-DOS. This is not normally necessary, but some editors align text using a non-standard Tab size. Example: -T4 <- Change TAB alignment to every 4 spaces. -N Show Line Numbers. This command Turns ON/OFF line numbering. If you are debugging source code this can be very handy. -RYYMMDD Print Only Files Newer Date Specified. This command can be used to print only recently modified files. It specifies the lower bounds of the file date. Example: -R870916 <- Print only files equal to or newer than 09/16/87 -E Issue An Escape Code. Escape codes can be expressed as decimal values, or as literal text. You can issue as many escape codes as you want. You cannot mix decimal and literal escape codes in the same string. It is sometimes more convenient to express "escape" in its decimal form, and the rest of the escape code by its literal value. You can embed ANY character in an escape string. Below are some examples. -EwwSSxxQQ <- Send the literal string "wwSSxxQQ" To The Printer. -E\027\015 <- Send Escape-SI (commonly puts IBM or Epson Printers into Compressed mode) -E\027\077 <- Send Escape-M -E\027 -EM <- Send Escape-M in two commands -DS Print The System Date On The Header. dPrint normally prints the file date on each header. You can change this with this switch. -DF Print The File Date (default). This is the default. -Hheadertext Add Text To Each Page Header. dPrint prints at the top of each page the file date, file name, and current page number. You can add additional text with this command. Text must be marked either by surrounding your text with "quotes", or by separating each word in the text with a '@'. dPrint will continue to add this text to each page header even as it prints several files. You can turn off the text by defining "null" text. Below are several examples: dPrint -h"MY Header" file*.txt Te?t.doc dPrint -hMY@Header file*.txt Te?t.doc Print one set of files with "Mytext Is This", and a second set with "Your Text Is This". dPrint -h"Mytext Is This" a*.txt -h"Your Text Is This" b*.txt Print all batch files with the string "ZazuPits Is My dog", and then all ".DAT" files with NO header text. dPrint -h"ZazuPits Is My dog" *.bat -h*.dat -#xxx Suppress portions of the page header. You can suppress various elements of the page header. Below are the values you can specify: D - Suppress the Date F - Suppress Filename P - Suppress Page numbering H - Suppress the page header altogether Examples: dPrint -#df foo.xxx <<- Suppress date & filename dPrint -#pd foo.xxx <<- Suppress Page numbering & date dPrint -#h foo.xxx <<- Suppress All of page header Environment Variables You can preset your favorite command line arguments in a "dPrint" environment variable. If you set a DPRINT environment variable with command line arguments, dPrint will read the environment variable as if you had entered them from the command line, and THEN your real command line arguments. Anything that you can enter from the command line can be loaded into your dPRINT environment variable. This is very handy for preloading escape codes for laser printers etc. Hewlett Packard escape codes are notoriously long and obnoxious to type. What could be more useful than a dPRINT environment variable to initialize your printer? How about an environment variable to DE-initialize your printer? The second variable is called dPRINTX. The arguments expressed in it are read in after all other arguments have been processed. Below are two sample environment variables for an imaginary printer. SET DPRINT=-E\027 -E[1;0r -W110 -M10 -L78 SET DPRINTX=-E\027 -EM Please note that the environment variables are entirely optional. Usage Guidelines Command line arguments may be repeated as many times as you like. You can use them in just about any combination that you can imagine. The arguments effect ONLY those files specified AFTER the arguments. They will not effect files specified before the argument. As you get used to dPrint, you will find that you give it same command line arguments every time you use it. PC-DOS limits the length of your command line arguments. You can extend this, and make dPrint easier to use by taking advantage of the dPrint environment variables. dPrint is not intended to print preformatted text, because it wraps long lines, and generates page breaks etc. If you are determined to use dprint on formatted text anyway, you can disable most of its formatting by turning OFF the page header altogether with "-#h" and the line wrapping with "-w999", and page breaks with "-L999". Changes Changes from the 12-20-87 version: dPrint sometimes incorrectly reported a printer error when it flushed its buffers at the end of a print job or between files. dPrint only accepted a "-" for command line switches. It now accepts either a "-" or a "/".